package cn.wolfcode.luowowo.article.service.impl;

import cn.wolfcode.luowowo.article.domain.Scenic;
import cn.wolfcode.luowowo.article.domain.ScenicDetail;
import cn.wolfcode.luowowo.article.mapper.ScenicMapper;
import cn.wolfcode.luowowo.article.query.ScenicQuery;
import cn.wolfcode.luowowo.article.service.IScenicService;
import com.alibaba.dubbo.config.annotation.Service;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.Date;
import java.util.List;

//JPA -- spring -data-jpa
//Mybatis-plus
@Service
public class ScenicServiceImpl implements IScenicService {
    @Autowired
    private ScenicMapper scenicMapper;


    @Override
    public PageInfo query(ScenicQuery qo) {
        PageHelper.startPage(qo.getCurrentPage(),qo.getPageSize());
        return new PageInfo(scenicMapper.selectAll());
    }

    @Override
    public Scenic selectByPrimaryKey(Long id) {
        return scenicMapper.selectByPrimaryKey(id);
    }

//    @Override
//    public Long saveOrUpdate(Scenic scenic) {
//        //摘要
//        String content = scenic.getContent().getContent();
//
//        if(content.length() >= 200){
//            scenic.setIntro(content.substring(0, 200));
//        }else{
//            scenic.setIntro(content);
//        }
//
//        //最后更新时间
//        scenic.setLastUpdateTime(new Date());
//
//        if(scenic.getId() == null){
//
//            //创建时间
//            scenic.setLastUpdateTime(new Date());
//            scenicMapper.insert(scenic);
//            ScenicContent scenicContent = scenic.getContent();
//            scenicContent.setId(scenic.getId());
//            scenicContentMapper.insert(scenicContent);
//
//        }else{
//            scenicMapper.updateByPrimaryKey(scenic);
//            ScenicContent scenicContent = scenic.getContent();
//            scenicContent.setId(scenic.getId());
//            scenicContentMapper.updateByPrimaryKey(scenicContent);
//        }
//
//
//        return scenic.getId();
//    }
//
//    @Override
//    public List<Scenic> list() {
//        List<Scenic> scenics = scenicMapper.selectAll();
//        return scenics;
//    }
//
    @Override
    public List<Scenic> selectTop5(Long destId) {
        return scenicMapper.selectTop5(destId);
    }

    @Override
    public List<Scenic> selectHotScenicTop10(Long scenicId) {
        return scenicMapper.selectHotScenicTop10(scenicId);
    }
}
